package cn.ilikes.tools.nosql.jpa.springs;

import java.io.Serializable;

public interface IBaseService extends IBaseQuery {

	public <V> V findEntity(Serializable key, Class<V> clazz) throws SpringErrorException;

	public <V> V get(Serializable key, Class<V> clazz) throws SpringErrorException;

	public <V> V load(Serializable key, Class<V> clazz) throws SpringErrorException;

	public <E> E merge(E entity) throws SpringErrorException;

	public <T> T remove(Serializable key, Class<T> clazz) throws SpringErrorException;

	public <T> T remove(T entity) throws SpringErrorException;

	public <V> void save(V entity) throws SpringErrorException;

	public <T> void update(T entity) throws SpringErrorException;

}
